package br.com.vti.sisp_sicrim.antigo.controller.tela;

import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Calendar;

import br.com.caelum.vraptor.Result;
import br.com.vti.sisp_sicrim.antigo.controller.programa.FuncoesGerais;
import br.com.vti.sisp_sicrim.antigo.model.DidCadastro;
import br.com.vti.sisp_sicrim.antigo.model.SicTabelas;
import br.com.vti.sisp_sicrim.antigo.model.Sislac01;
import br.com.vti.sisp_sicrim.antigo.util.Sessao;
import br.com.vti.sisp_sicrim.antigo.util.UtilBean;

/**
 * Classe responsavel por encapsular o tratamento e as consistencias da tela Idcta000
 * 
 * @author Incode - Data: mai/2014
 * 
 */
public class Idcta000 {
	private boolean enviada = false;
	private String pagina = "/resources/antigo/jsp/Idcta000.jsp";
	private String versao;
	private String operacao;
	private int dataCorrente;
	private String horaCorrente;
	private String p200;
	private String cab01;
	private long iRegger;
	private long iReggerm;
	private String iNomide;
	private String iNommae;
	private int dnas;
	private int mnas;
	private int anas;
	private String chave;
	private int matesp;
	private String empresa;
	private String nomeClasse;
	private String[][] dedos = new String[6][3];
	private String mensagem = "";
	private String funcao = "0";
	private String campofocus = "iregger";
	private String navegar = "";
	public Boolean temMensagem = false;
	private Result result;
	private Sessao sessao;

	FuncoesGerais funcoes = new FuncoesGerais();
	// Classes views
	DidCadastro did = new DidCadastro();
	DidCadastro viu = new DidCadastro();
	SicTabelas vwTabele = new SicTabelas();
	// Classes includes
	Sislac01 sislac01 = new Sislac01();

	public Idcta000() {
		inicializar(false);
	}

	public Idcta000(boolean primeiraVez, Sessao sessao) {
		this.sessao = sessao;
		inicializar(primeiraVez);
	}

	public void inicializar(boolean primeiraVez) {
		if (primeiraVez) {
			versao = "0";
			operacao = "";
			dataCorrente = 0;
			p200 = "";
			cab01 = "";
			iRegger = 0;
			iReggerm = 0;
			iNomide = "";
			iNommae = "";
			dnas = 0;
			mnas = 0;
			anas = 0;
			chave = "";
			dedos = (String[][]) UtilBean.fill(dedos, "");
			matesp = 0;
			empresa = "";
			nomeClasse = "";
			empresa = sessao.getSisgsisp().getEmpresa();
			operacao = sessao.getSisgsisp().getOperacao();
			versao = sessao.getSisgsisp().getVersao();
		}
		horaCorrente = new SimpleDateFormat("HH:mm:ss").format(Calendar.getInstance().getTime()); // *TIMX
	}

	public boolean receberTela(boolean primeiraVez, Result result) throws Exception {
		// faz o tratamento das criticas necessarias para os dados da tela
		// recebida
		this.result = result;
		temMensagem = false;
		if (!primeiraVez) {
			return validar();
		} else {
			return true;
		}
	}

	public void enviarTela(boolean primeiraVez, Result result, String origem) {
		this.enviada = true;
		// rotina para enviar a tela
		// caso esteja setado valores para acoesFinais, executa as classes
		// correspondentes
		this.result = result;
		if (UtilBean.acoesFinais != null && !UtilBean.acoesFinais.isEmpty()) {
			UtilBean.processaAcao();
		} else {
			enviar(result, origem);
		}
	}

	public void enviar(Result result, String origem) {
		// redicionar para o jsp correspondente
		UtilBean.redireciona(pagina, result, origem);
	}

	public void enviarMensagem(String campo, String mensagem) {
		// formatar a mensagem de erro, posicionar no campo informa
		if (campo != null) {
			campofocus = campo;
		} else {
			campofocus = "";
		}
		this.mensagem = mensagem;
		temMensagem = true;
		// enviar(result, origem);
	}

	public boolean validar() throws Exception {
		// validar os campos recebidos da tela
		UtilBean.funcao = this.funcao;
		ValidarFuncao();
		if (temMensagem) {
			return false;
		}
		ValidarOperacao();
		if (temMensagem) {
			return false;
		}
		ValidarINomide();
		if (temMensagem) {
			return false;
		}
		ValidarINommae();
		if (temMensagem) {
			return false;
		}
		ValidarAnas();
		if (temMensagem) {
			return false;
		}
		ValidarDedos();
		if (temMensagem) {
			return false;
		}
		ValidarD01dedos();
		if (temMensagem) {
			return false;
		}

		sessao.getSisgsisp().setEmpresa(this.empresa);
		sessao.getSisgsisp().setOperacao(this.operacao);
		sessao.getSisgsisp().setVersao(this.versao);
		return true;
	}

	private void ValidarFuncao() {
		// Consist�ncia F00funcao
		if (!(UtilBean.funcao.equals(UtilBean.ctt_processa) || UtilBean.funcao.equals(UtilBean.ctt_pf2) || UtilBean.funcao.equals(UtilBean.ctt_confirma) || UtilBean.funcao.equals(UtilBean.ctt_retorna) || UtilBean.funcao.equals(UtilBean.ctt_proxima))) {
			enviarMensagem(null, "");
			return;
		}
		// if (UtilBean.funcao.equals(UtilBean.ctt_processa) || UtilBean.funcao.equals(UtilBean.ctt_pf2) || UtilBean.funcao.equals(UtilBean.ctt_confirma) ||
		// UtilBean.funcao.equals(UtilBean.ctt_retorna) || UtilBean.funcao.equals(UtilBean.ctt_proxima)) {
		// enviarMensagem(null, "");
		// return;
		// }
	}

	private void ValidarOperacao() {
		// Consist�ncia F00OPERACAO
		if (!operacao.equals("AIC")) {
			funcoes.sissm001(result, sessao);
		}
	}

	private void ValidarINomide() throws Exception {
		// Consist�ncia F00I-NOMIDE
		String dataD;
		String dataA;
		if (iRegger > 0 && iNomide.trim().equals("")) {
			// Par�grafo: h1()
			if (viu.consultaNumeroRg(iRegger)) {
				iNomide = viu.getNomeIdent();
				iNommae = viu.getNomeMae();
				dataA = String.valueOf(viu.getDataNasc());
				if (dataA.equals("19620229") || dataA.equals("19290229") || dataA.equals("19870229")) {
					anas = (int) UtilBean.extraiDigitos(Integer.parseInt(dataA), 8, 1 - 1, 4);
					mnas = (int) UtilBean.extraiDigitos(Integer.parseInt(dataA), 8, 5 - 1, 2);
					dnas = (int) UtilBean.extraiDigitos(Integer.parseInt(dataA), 8, 7 - 1, 2);
				} else {
					dataD = dataA;
					dataA = String.valueOf(UtilBean.inverteData(Integer.parseInt(dataA)));
					dnas = (int) UtilBean.extraiDigitos(Integer.parseInt(dataA), 8, 1 - 1, 2);
					mnas = (int) UtilBean.extraiDigitos(Integer.parseInt(dataA), 8, 3 - 1, 2);
					anas = (int) UtilBean.extraiDigitos(Integer.parseInt(dataA), 8, 5 - 1, 4);
					dedos[1][1] = viu.getPolegarDireito();
					dedos[2][1] = viu.getIndicadorDireito();
					dedos[3][1] = viu.getMedioDireito();
					dedos[4][1] = viu.getAnularDireito();
					dedos[5][1] = viu.getMinimoDireito();
					dedos[1][2] = viu.getPolegarEsquerdo();
					dedos[2][2] = viu.getIndicadorEsquerdo();
					dedos[3][2] = viu.getMedioEsquerdo();
					dedos[4][2] = viu.getAnularEsquerdo();
					dedos[5][2] = viu.getMinimoEsquerdo();
				}
				viu.fecha();
				enviarMensagem("iregger", "");
				return;
			}
			if (viu.registrosProcessados() == 0) {
				enviarMensagem("iregger", "REGISTRO INEXISTENTE");
				return;
			}
		} else {
			if (iNomide.trim().equals("")) {
				enviarMensagem("inomide", "Informe o nome");
				return;
			}
			funcoes.sissanom(iNomide);
			if (!funcoes.camret.equals("")) {
				enviarMensagem("inomide", funcoes.msgret);
				return;
			}
		}
	}

	private void ValidarINommae() {
		// Consist�ncia F00I-NOMMAE
		int al = 4;
		String[] ta = new String[13];
		int i = 0;
		i = 0;
		Arrays.fill(ta, "");
		if (operacao.equals("AIC")) {
			if (!iNomide.trim().equals("")) {
				if (iNommae.equals("************")) {
					return;
				} else {
					for (i = 1; i <= 12; i++) {
						ta[i] = UtilBean.subStr(iNommae, i - 1, 1);
					}
					for (i = 1; i <= 12; i++) {
						if (ta[1].equals("*") && !ta[i].equals("*")) {
							enviarMensagem("inommae", "SE NAO TIVER NOME DA MAE, DEVE CONTER 12 (*)");
							return;
						}
					}
					funcoes.sissanom(iNommae);
					if (!funcoes.camret.equals("")) {
						enviarMensagem("inommae", funcoes.msgret);
						return;
					}
				}
			} else {
				funcoes.sissanom(iNommae);
				if (!funcoes.camret.equals("")) {
					enviarMensagem("inommae", funcoes.msgret);
					return;
				}
			}
		}
	}

	private void ValidarAnas() throws Exception {
		// Consist�ncia F00ANAS
		Sislac01 sislac01 = new Sislac01();
		int dddd;
		String mensa;
		int datn;
		String senesp = "";
		int[] cont = { 0, 0, 0 };

		if (!iNomide.trim().equals("") && !UtilBean.funcao.equals(UtilBean.ctt_proxima)) {
			datn = UtilBean.obtemDataCorrente();
			dddd = (anas * 10000) + (mnas * 100) + dnas;
			if (dddd > UtilBean.obtemDataCorrente()) {
				enviarMensagem("dnas", "Data maior que a data atual");
				return;
			}
			if ((UtilBean.subStr(dddd, 0, 6) < 193911 || UtilBean.subStr(dddd, 0, 6) > 197312) && iNommae.trim().equals("")) {
				enviarMensagem("iNommae", "Informe o nome da mae");
				return;
			}
			if (dddd != 19620229) {
				if (dddd != 19870229) {
					if (dddd != 19290229) {
						if (!UtilBean.validarMascara(dddd, "yyyyMMdd") || anas < 1850 || anas > UtilBean.subStr(datn, 0, 4)) {
							enviarMensagem("dnas", "Data invalida");
							return;
						}
					}
				}
			}
			if (chave.trim().equals("") || chave.equals("A")) {
				if (did.consultaNomeIdentNomeMaeDataNasc(iNomide, iNommae, dddd)) {
					if (did.getNumeroRg() != iRegger || did.getNumeroRg() == iRegger) {
						return;
					}
					mensa = UtilBean.concatena("HOMONIMOS CADASTRADOS, RG:", did.getNumeroRg());
					// Par�grafo: r00()
					// Repeat
					// INPUT 314
					if (!getEnviada()) {
						enviarTela(false, result, getClass().getSimpleName().toUpperCase());
					} else {
						receberTela(false, result);
					}
					setMensagemSaida("redigite a senha especial p/confirmar");
					if (!UtilBean.funcao.equals(UtilBean.ctt_retorna)) {
						// pesq,0, 3) = 18;
						// pesq,3, 12) = matesp;
						// Par�grafo: j1()
						vwTabele.consultaTabele(18, (long) matesp);
						if (vwTabele.getChaveAlfaAcesso() != senesp) {
							enviarMensagem("senesp", "");
							return;
						}
						mensa = UtilBean.concatena("HOMONIMOS CADASTRADOS, RG:", did.getNumeroRg());
						// Par�grafo: r00()
						// Repeat
						// INPUT 314
						if (!getEnviada()) {
							enviarTela(false, result, getClass().getSimpleName().toUpperCase());
						} else {
							receberTela(false, result);
						}
						setMensagemSaida("redigite a senha especial p/confirmar");
						if (!UtilBean.funcao.equals(UtilBean.ctt_retorna)) {
							// pesq,0, 3) = 18;
							// pesq,3, 12) = matesp;
							// Par�grafo: j1()
							vwTabele.consultaTabele(18, (long) matesp);
							if (vwTabele.getChaveAlfaAcesso() != senesp) {
								enviarMensagem("senesp", "");
								return;
							}
							sislac01.niveis = vwTabele.getDescricaoElem();
							if (!(UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("1") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("3") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("5") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("7"))) {
								enviarMensagem("senesp", "");
								return;
							}
							if (!(UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("1") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("3") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("5") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("7"))) {
								enviarMensagem("senesp", "");
								return;
							}
							if (did.registrosProcessados() == 0) {
								enviarMensagem("matesp", "");
								return;
							}
						}
						cont[1] += 1;
						if (cont[1] > 1) {
							return;
						}
					}
				}
				did.fecha();

				if (did.consultaNumeroRg(getIregger())) {
					if (did.getNomeIdent().trim().equals(iNomide.trim()) && did.getNomeMae().trim().equals(iNommae.trim()) && did.getDataNasc() == dddd) {
						return;
					} else {
						mensa = UtilBean.concatena("NOME OU DATA DE NASCIMENTO ALTERADO");
						if (!mensa.equals(""))
							return;
						// Par�grafo: r01()
						// Repeat
						// INPUT 356
						setMensagemSaida("redigite a senha especial p/confirmar");
						if (!UtilBean.funcao.equals(UtilBean.ctt_retorna)) {
							// Par�grafo: J2.
							vwTabele.consultaTabele(18, (long) matesp);
							if (vwTabele.getChaveAlfaAcesso() != senesp) {
								enviarMensagem("senesp", "");
								return;
							}
							if (!(UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("1") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("3") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("5") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("7"))) {
								enviarMensagem("senesp", "");
								return;
							}
							if (!(UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("1") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("3") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("5") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("7"))) {
								enviarMensagem("senesp", "");
								return;
							}
							if (vwTabele.registrosProcessados() == 0) {
								enviarMensagem("matesp", "");
								return;
							}
						}
						cont[1] += 1;
						if (cont[1] > 1) {
							return;
						}
					}
				}
				did.fecha();
			}
		}
	}

	private void ValidarDedos() throws Exception {
		// Consist�ncia F00DEDOS
		// Sislac01 sislac01 = new Sislac01 ();
		String dedo;
		int w = 0;
		int wt = 0;
		int h = 0;
		int s = 0;
		int l = 0;
		int i = 0;
		int j = 0;
		String mensa = "";
		String senesp = "";
		String maodir = "";
		String maoesq = "";
		int k = 0;
		String wUser = UtilBean.getInitUser();
		String tabDescel;
		int tPosto = 0;
		String tAsterisco;
		String tDescel;
		String chaveAlfa = "";
		String ppg;
		String pparm;
		int rTid = 0;
		int len;
		int retcode;
		String getarea = "";
		String devi;
		String devic;
		String video = "";
		int nterm;

		chaveAlfa = UtilBean.moveSubstring(chaveAlfa, 0, 3, "N", 888);
		// ATUALIZAR A TABELA DE USER-ID A CADA NOVO USUARIO
		chaveAlfa = UtilBean.moveSubstring(chaveAlfa, 3, 14, "X", wUser);
		// TABELA DE USER-ID
		vwTabele.consultaTabcha(888, wUser);
		tabDescel = vwTabele.getDescricaoElem();
		wt = 0;
		// ALTERACAO PARA IMPRESSAO DO RG E BOLETIM PELA ABN
		len = 148;
		funcoes.getchr(getarea, len, rTid); // CALL ???
		wt = 0;
		if (video.equals("TIDC01") || video.equals("TIDC13") && tPosto == 1) {
			wt = 1;
		} else {
			if (chave.equals("I")) {
				for (i = 1; i <= 2; i++) {
					for (j = 1; j <= 5; j++) {
						setDedos(j, i, "W");
					}
				}
			}
			wt = 0;
		}
		if (wt == 1) {
			if (!UtilBean.funcao.equals(UtilBean.ctt_proxima)) {
				if (chave.equals("I") || chave.equals("A")) {
					funcoes.idcsa001(dedos);
					for (i = 1; i <= 2; i++) {
						for (j = 1; j <= 5; j++) {
							dedo = dedos[j][i];
							if (!UtilBean.subStr(dedo, 0 + 5 - 1, 1).trim().equals("") && !UtilBean.subStr(dedo, 0 + 2 - 1, 1).equals("4")) {
								k += 1;
							}
							if (UtilBean.subStr(dedo, 0 + 2 - 1, 1).equals("4") && UtilBean.subStr(dedo, 0 + 1 - 1, 1).trim().equals("")) {
								w += 1;
							}
							if (!UtilBean.subStr(dedo, 0 + 1 - 1, 1).trim().equals("")) {
								h += 1;
							}
							if (UtilBean.subStr(dedo, 0 + 1 - 1, 1).trim().equals("") && UtilBean.subStr(dedo, 0 + 5 - 1, 1).trim().equals("") && !UtilBean.subStr(dedo, 0 + 2 - 1, 1).trim().equals("")) {
								l += 1;
							}
							if ((UtilBean.subStr(dedo, 0 + 2 - 1, 1).equals("2") || UtilBean.subStr(dedo, 0 + 2 - 1, 1).equals("3")) && j > 1 && UtilBean.subStr(dedo, 0 + 1 - 1, 1).trim().equals("") && !UtilBean.subStr(dedo, 0 + 5 - 1, 1).trim().equals("")) {
								s += 1;
							}
							if ((k > 2 && w == 0 && h < i) || s > 1) {
								enviarMensagem(null, "ERRO SUBCLASSIFICACAO POSICAO 5");
								return;
							}
						}
					}
					// IF W = 0 && K = 0 && H < 8 && L < 10
					// REINPUT "FALTA INFORMACAO POSICAO 5"
					// MARK 8 ALARM
					for (i = 1; i <= 5; i++) {
						// end-if
						maodir = UtilBean.moveSubstring(maodir, 7 * i, 7, "A", getDedos(i, 1));
						maoesq = UtilBean.moveSubstring(maoesq, 7 * i, 7, "A", getDedos(i, 2));
					}
					if (!UtilBean.funcao.equals(UtilBean.ctt_proxima)) {
						// Par�grafo: g()
						did.consultaMaoDireitaMaoEsquerda(
						// maodir,
						getDedos(1, 1), getDedos(2, 1), getDedos(3, 1), getDedos(4, 1), getDedos(5, 1), getDedos(1, 2), getDedos(2, 2), getDedos(3, 2), getDedos(4, 2), getDedos(5, 2)
						// maoesq
						);
						// consultaMaoDireitaMaoEsquerda(
						// String pAnularDireito, String pIndicadorDireito, String pMedioDireito, String pMinimoDireito, String pPolegarDireito,
						// String pAnularEsquerdo, String pIndicadorEsquerdo, String pMedioEsquerdo, String pMinimoEsquerdo, String pPolegarEsquerdo) {
						if (did.getNomeIdent() != iNomide)
						// IF *NUMBER(G.) < 2
						// COMPRESS "FORMULA DATILOSCOPICA C/RG:"
						// DINIDE-REGGER INTO MENSA
						// ELSE
						// COMPRESS "FORM.DATILOSC. COM" *NUMBER(G.)
						// "OCORRENCIAS" INTO MENSA
						{
							// INPUT 606
							if (!getEnviada()) {
								enviarTela(false, result, getClass().getSimpleName().toUpperCase());
							} else {
								receberTela(false, result);
							}
							if (!UtilBean.funcao.equals(UtilBean.ctt_retorna)) {
								// pesq,0, 3) = 18;
								// pesq,3, 12) = matesp;
								// Par�grafo: t1()
								vwTabele.consultaTabele(18, (long) matesp);
								if (vwTabele.getChaveAlfaAcesso() != senesp) {
									enviarMensagem("senesp", "");
									return;
								}
								sislac01.niveis = vwTabele.getDescricaoElem();
								if (!(UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("1") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("3") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("5") || UtilBean.subStr(sislac01.niveis, 30 + 13 - 1, 1).equals("7"))) {
									enviarMensagem("senesp", "");
									return;
								}
								if (!(UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("1") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("3") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("5") || UtilBean.subStr(sislac01.niveis, 30 + 11 - 1, 1).equals("7"))) {
									enviarMensagem("senesp", "");
									return;
								}
								if (vwTabele.registrosProcessados() == 0) {
									enviarMensagem("matesp", "");
									return;
								}
							}
						}
					}
				}
			}
		}
	}

	private void ValidarD01dedos() {
		// Consist�ncia D01DEDOS
	}

	public String getVersao() {
		return versao;
	}

	public void setVersao(String versao) {
		this.versao = versao;
	}

	public String getOperacao() {
		return operacao;
	}

	public void setOperacao(String operacao) {
		this.operacao = operacao;
	}

	public int getDataCorrente() {
		return dataCorrente;
	}

	public void setDataCorrente(int dataCorrente) {
		this.dataCorrente = dataCorrente;
	}

	public String getP200() {
		return p200;
	}

	public void setP200(String p200) {
		this.p200 = p200;
	}

	public String getCab01() {
		return cab01;
	}

	public void setCab01(String cab01) {
		this.cab01 = cab01;
	}

	public long getIregger() {
		return iRegger;
	}

	public void setIregger(long iRegger) {
		this.iRegger = iRegger;
	}

	public long getIreggerm() {
		return iReggerm;
	}

	public void setIreggerm(long iReggerm) {
		this.iReggerm = iReggerm;
	}

	public String getInomide() {
		return iNomide;
	}

	public void setInomide(String iNomide) {
		this.iNomide = iNomide;
	}

	public String getInommae() {
		return iNommae;
	}

	public void setInommae(String iNommae) {
		this.iNommae = iNommae;
	}

	public int getDnas() {
		return dnas;
	}

	public void setDnas(int dnas) {
		this.dnas = dnas;
	}

	public int getMnas() {
		return mnas;
	}

	public void setMnas(int mnas) {
		this.mnas = mnas;
	}

	public int getAnas() {
		return anas;
	}

	public void setAnas(int anas) {
		this.anas = anas;
	}

	public String getChave() {
		return chave;
	}

	public void setChave(String chave) {
		this.chave = chave;
	}

	public int getMatesp() {
		return matesp;
	}

	public void setMatesp(int matesp) {
		this.matesp = matesp;
	}

	public String getEmpresa() {
		return empresa;
	}

	public void setEmpresa(String empresa) {
		this.empresa = empresa;
	}

	public String getNomeClasse() {
		return nomeClasse;
	}

	public void setNomeClasse(String nomeClasse) {
		this.nomeClasse = nomeClasse;
	}

	public String[][] getDedos() {
		return dedos;
	}

	public void setDedos(String[][] dedos) {
		this.dedos = dedos;
	}

	public String getDedos(int index1, int index2) {
		return dedos[index1][index2];
	}

	public void setDedos(int index1, int index2, String dedos) {
		this.dedos[index1][index2] = dedos;
	}

	public String getHoraCorrente() {
		return horaCorrente;
	}

	public void setHoraCorrente(String horaCorrente) {
		this.horaCorrente = horaCorrente;
	}

	public String getFuncao() {
		return funcao;
	}

	public void setFuncao(String funcao) {
		this.funcao = funcao;
	}

	public String getCampofocus() {
		return campofocus;
	}

	public void setCampofocus(String campofocus) {
		this.campofocus = campofocus;
	}

	public String getNavegar() {
		return navegar;
	}

	public void setNavegar(String navegar) {
		this.navegar = navegar;
	}

	public String getMensagem() {
		return mensagem;
	}

	public void setMensagem(String mensagem) {
		this.mensagem = mensagem;
	}

	public void setMensagemSaida(String mensagem) {
		this.mensagem = mensagem;
	}

	public boolean getEnviada() {
		return this.enviada;
	}

	public void setSessao(Sessao sessao) {
		this.sessao = sessao;
	}
}
